perm filename TEST2.MF[MF,DEK] blob sn#750688 filedate 1984-04-20 generic text, type C, neo UTF8
COMMENT āŠ—   VALID 00015 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00003 00002	delimiters ()
C00007 00003	draw z1a..z2a..z3a..z4a & z4a..z5a..z6a..cycle
C00008 00004	draw z1a{up}..z2a{left}..z3a..z4a..z5a..z6a..cycle
C00009 00005	show up,left
C00010 00006	draw z1a..z2a..z3a..z4a & z4a..z5a..z6a..cycle
C00011 00007	draw z1a..z2a..z3a..z4a..z4a..z5a..z6a..cycle
C00012 00008	draw z1a..z2a..z3a..z4a{curl 2}..z5a..z6a..cycle
C00013 00009	draw z1a..z2a..z3a{curl 1}..z4a..z5a{curl 1}..z6a..cycle
C00014 00010	erase z1..z2&z2..z3&z3..z4&z4..z5&z5..z6&z6..z1&cycle
C00015 00011	def demochar(text ..)=
C00016 00012	demochar(..)
C00017 00013	path a.in, a.out
C00020 00014	tracingchoices:=1
C00022 00015	end
C00023 ENDMK
CāŠ—;
delimiters ();
def tracingall=tracingcommands:=3;
 tracingedges:=1; tracingtitles:=1; tracingequations:=1; tracingspecs:=2;
	tracingpens:=1; tracingchoices:=1; tracingstats:=2;
 tracingonline:=1;tracingoutput:=1;tracingmacros:=3 enddef;
%tracingall;

def down=(0,-1) enddef;
def up=(0,1) enddef;
def right=(1,0) enddef;
def left=(-1,0) enddef;
def angle primary d = (cosd d, sind d) enddef;

vardef z@#=(x@#,y@#) enddef;

edges e;
e=nulledges;

def draw expr x = addto e contour x withweight 1 enddef;
def erase expr x = addto e contour x withweight -1 enddef;

openwindow 1 from (0,0) to (400,450) at (-100,200);

smoothing:=1; autorounding:=3;

def next =
 display e on 1;
 shipout e;
 e:=nulledges;
 charcode:=charcode+1;
enddef;

hppp:=240/72.27;
vppp:=hppp;
charcode:=96;
tracingonline:=1;
h=v=4;

z1=(6h,0); z2=(0,8v); z3=(4h,11v); z4=(10h,8v); z5=(17h,9v); z6=(18h,2v);
z0=(9h,3v);
for n:=1 step 1 until 6: z[n]a-z0 = 2(z[n]-z0); endfor
path a.in, a.out;
a.out = % data taken from bitpad
(30.8154h,30.5538v)..(24.1231h,25.7692v)..(15.1231h,23.3692v)..(07.1692h,26.1692v)
..(03.6308h,33.6154v)..(10.0154h,44.2000v)..((23.0462h,51.3385v)..(27.2308h,53.2000v))
..(29.6615h,54.8000v)..((30.2000h,56.8923v)..(30.2154h,62.7846v))
..(29.7538h,66.2308v)..(27.5385h,69.8308v)..(21.7692h,71.4923v)..(17.2462h,70.8769v)
..(13.3538h,68.0462v)..((12.7538h,65.4000v)..(12.6462h,64.1692v))
..(11.3385h,61.2154v)..(09.3385h,60.5077v)..(06.9231h,61.4769v)..(05.6000h,64.2615v)
..(07.0154h,68.6923v)..(11.1538h,71.8923v)..(21.8000h,73.7846v)..(30.8154h,72.6000v)
..(38.0154h,67.7538v)..((39.2615h,60.7538v)..(39.4154h,36.1692v))
..(39.7231h,31.5538v)..(41.3231h,28.9077v)..(43.6462h,28.1231v)..(46.9385h,29.7385v)
..(48.1538h,32.2000v)
&(48.1538h,32.2000v)..(49.8462h,32.1077v)
&(49.8462h,32.1077v)..(47.4923h,26.3538v)..(41.2000h,23.5231v)..(35.0615h,25.4923v)
..(30.8154h,30.5538v) & cycle;

a.in =
((30.2154h,51.7692v)..(30.4308h,34.5385v))
..((28.0000h,31.0154v){curl 0}..(20.4769h,28.1385v)..(14.7077h,30.9077v)
   ..(13.2462h,36.2000v)..(17.1846h,44.3077v)..(30.2154h,51.7692v){curl 0}) & cycle;

draw a.out; erase a.in;
next;
end
draw z1a..z2a..z3a..z4a & z4a..z5a..z6a..cycle;
erase z1..z2..z3..z4 & z4..z5..z6..cycle;
next;
end
draw z1a{up}..z2a{left}..z3a..z4a..z5a..z6a..cycle;
erase z1{up}..z2{left}..z3..z4..z5..z6..cycle;
next;
show up,left;
draw z1a{z2a-z1a}..z2a{z2a-z1a}..z3a..z4a..z5a..z6a..cycle;
erase z1{z2-z1}..z2{z2-z1}..z3..z4..z5..z6..cycle;
next;
draw z1a..z2a..z3a..z4a & z4a..z5a..z6a..cycle;
erase z1..z2..z3..z4 & z4..z5..z6..cycle;
next;
draw z1a..z2a..z3a..z4a..z4a..z5a..z6a..cycle;
erase z1..z2..z3..z4{curl 1}..z5..z6..cycle;
next;
draw z1a..z2a..z3a..z4a{curl 2}..z5a..z6a..cycle;
erase z1..z2..z3..z4{curl 0}& z4..z5..z6..cycle;
next;
draw z1a..z2a..z3a{curl 1}..z4a..z5a{curl 1}..z6a..cycle;
path p; p=z3..z4..z5;
erase z1..z2..z3{curl 1}..z4..z5{curl 1}..z6..cycle;
next;
erase z1..z2&z2..z3&z3..z4&z4..z5&z5..z6&z6..z1&cycle;
draw z1a..z2a&z2a..z3a&z3a..z4a&z4a..z5a&z5a..z6a&z6a..z1a&cycle;
next;
def demochar(text ..)=
draw z1a..z2a..z3a..z4a..z5a..z6a..cycle;
erase z1..z2..z3..z4..z5..z6..cycle;
next;
enddef;
demochar(..);
demochar(..tension 2..);
demochar(..tension 1.2..);
demochar(..tension 1000..);
demochar(..tension 3/4..);
demochar(..tension 1 and 2..);
demochar(..tension 2 and 1..);
path a.in, a.out;
a.out = % data taken from bitpad
(30.8154h,30.5538v)..(24.1231h,25.7692v)..(15.1231h,23.3692v)..(07.1692h,26.1692v)
..(03.6308h,33.6154v)..(10.0154h,44.2000v)..((23.0462h,51.3385v)..(27.2308h,53.2000v))
..(29.6615h,54.8000v)..((30.2000h,56.8923v)..(30.2154h,62.7846v))
..(29.7538h,66.2308v)..(27.5385h,69.8308v)..(21.7692h,71.4923v)..(17.2462h,70.8769v)
..(13.3538h,68.0462v)..((12.7538h,65.4000v)..(12.6462h,64.1692v))
..(11.3385h,61.2154v)..(09.3385h,60.5077v)..(06.9231h,61.4769v)..(05.6000h,64.2615v)
..(07.0154h,68.6923v)..(11.1538h,71.8923v)..(21.8000h,73.7846v)..(30.8154h,72.6000v)
..(38.0154h,67.7538v)..((39.2615h,60.7538v)..(39.4154h,36.1692v))
..(39.7231h,31.5538v)..(41.3231h,28.9077v)..(43.6462h,28.1231v)..(46.9385h,29.7385v)
..(48.1538h,32.2000v)
&(48.1538h,32.2000v)..(49.8462h,32.1077v)
&(49.8462h,32.1077v)..(47.4923h,26.3538v)..(41.2000h,23.5231v)..(35.0615h,25.4923v)
..(30.8154h,30.5538v) & cycle;

a.in =
((30.2154h,51.7692v)..(30.4308h,34.5385v))
..((28.0000h,31.0154v){curl 0}..(20.4769h,28.1385v)..(14.7077h,30.9077v)
   ..(13.2462h,36.2000v)..(17.1846h,44.3077v)..(30.2154h,51.7692v){curl 0}) & cycle;

draw a.out; erase a.in;
next;
tracingchoices:=1;
show (0,0){angle 30}..(200,0){angle -60};
show (0,0){angle 30}..(200,0);
show (0,0){angle 30}..(200,0){curl 2};
show z1{z2-z1}..z2{z2-z1}..z3..z4..z5..z6..cycle,
  (z1..z2)..z3..z4..z5..z6..cycle;
tracingchoices:=0;

def tickmarks =
 draw (-5,0)..tension100..(0,0)..tension100..
	(0,-2)..tension100..(-5,-2)..tension100..cycle;
 draw (205,0)..tension100..(200,0)..tension100..
	(200,-2)..tension100..(205,-2)..tension100..cycle;
 enddef;

draw (0,0){angle 30}..(200,0){angle -60} &
      (200,0)..(200,-100){down}..tension10..(0,-100){up}..(0,0) & cycle;
tickmarks; next;
draw (0,0){angle 60}..(200,0){angle -60} &
      (200,0)..(200,-100){down}..tension10..(0,-100){up}..(0,0) & cycle;
tickmarks; next;
draw (0,0){angle120}..(200,0){angle -60} &
      (200,0)..(200,-100){down}..tension10..(0,-100){up}..(0,0) & cycle;
tickmarks; next;
draw (0,0){angle-30}..(200,0){angle -60} &
      (200,0)..(200,-100){down}..tension10..(0,-100){up}..(0,0) & cycle;
tickmarks; next;
erase (0,0){angle 30}..(200,0){angle -60} &
      (200,0)..(200,-100){down}..tension10..(0,-100){up}..(0,0) & cycle;
draw (0,0){angle 60}..(200,0){angle -60} &
      (200,0)..(200,-100){down}..tension10..(0,-100){up}..(0,0) & cycle;
tickmarks; next;
end